/*************************************************************************
    > File Name: 1pipe.c
    > Author: Ykk
    > Mail: 3393579535@qq.com 
    > Created Time: 2023年04月15日 星期六 10时34分45秒
 ************************************************************************/

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<unistd.h>

//创建无名管道
int main()
{

	int fd[2];
	int ret = -1;

	//创建一个无名管道,管道在内存里
	ret = pipe(fd);
	if(-1 == ret)
	{
		perror("pipe");
		return 1;
	}

	//fd[0]用于读  fd[1]用于写
	printf("fd[0] = %d fd[1] = %d\n",fd[0],fd[1]);

	//查看管道缓冲区的大小
	printf("pipe size: %ld\n",fpathconf(fd[0],_PC_PIPE_BUF));
	printf("pipe size: %ld\n",fpathconf(fd[1],_PC_PIPE_BUF));
	printf("pipe size: %ld\n",fpathconf(fd[0],_PC_NAME_MAX));
	printf("pipe size: %ld\n",fpathconf(fd[1],_PC_NAME_MAX));

	//关闭文件描述符
	close(fd[0]);
	close(fd[1]);

	return 0;
}
